<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>hashcat-3.201: H:/TDDownload/Hashcat v3.20/hashcat-3.201/src/bitops.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">hashcat-3.201
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_06fe396e3e859736df6d43ad26baa72e.html">hashcat-3.201</a></li><li class="navelem"><a class="el" href="dir_9ce3dfc5d638c7f8b2c4ec0f6627771b.html">src</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">bitops.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;common.h&quot;</code><br />
<code>#include &quot;types.h&quot;</code><br />
<code>#include &quot;bitops.h&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for bitops.c:</div>
<div class="dyncontent">
<div class="center"><img src="bitops_8c__incl.gif" border="0" usemap="#_h_1_2_t_d_download_2_hashcat_01v3_820_2hashcat-3_8201_2src_2bitops_8c" alt=""/></div>
<map name="_h_1_2_t_d_download_2_hashcat_01v3_820_2hashcat-3_8201_2src_2bitops_8c" id="_h_1_2_t_d_download_2_hashcat_01v3_820_2hashcat-3_8201_2src_2bitops_8c">
<area shape="rect"  title=" " alt="" coords="64,5,227,61"/>
<area shape="rect"  title=" " alt="" coords="5,109,88,136"/>
<area shape="rect"  title=" " alt="" coords="113,109,178,136"/>
<area shape="rect"  title=" " alt="" coords="202,109,270,136"/>
</map>
</div>
</div>
<p><a href="bitops_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a6cca97e9410febb66fd3238218978c0f"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bitops_8c.html#a6cca97e9410febb66fd3238218978c0f">rotl32</a> (const u32 a, const u32 n)</td></tr>
<tr class="separator:a6cca97e9410febb66fd3238218978c0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53ed22702e46960517b997e16d6280a4"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bitops_8c.html#a53ed22702e46960517b997e16d6280a4">rotr32</a> (const u32 a, const u32 n)</td></tr>
<tr class="separator:a53ed22702e46960517b997e16d6280a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a115bdd5d5aa2876f94223378088e3ee3"><td class="memItemLeft" align="right" valign="top">u64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bitops_8c.html#a115bdd5d5aa2876f94223378088e3ee3">rotl64</a> (const u64 a, const u64 n)</td></tr>
<tr class="separator:a115bdd5d5aa2876f94223378088e3ee3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9882286891d63783d6f50e5148853907"><td class="memItemLeft" align="right" valign="top">u64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bitops_8c.html#a9882286891d63783d6f50e5148853907">rotr64</a> (const u64 a, const u64 n)</td></tr>
<tr class="separator:a9882286891d63783d6f50e5148853907"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a1120031ebc424b1407f5ac127bea53"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bitops_8c.html#a3a1120031ebc424b1407f5ac127bea53">byte_swap_32</a> (const u32 n)</td></tr>
<tr class="separator:a3a1120031ebc424b1407f5ac127bea53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6eb53eddc00b9bb05722cccb56ddab64"><td class="memItemLeft" align="right" valign="top">u64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bitops_8c.html#a6eb53eddc00b9bb05722cccb56ddab64">byte_swap_64</a> (const u64 n)</td></tr>
<tr class="separator:a6eb53eddc00b9bb05722cccb56ddab64"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a id="a3a1120031ebc424b1407f5ac127bea53"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a1120031ebc424b1407f5ac127bea53">&#9670;&nbsp;</a></span>byte_swap_32()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 byte_swap_32 </td>
          <td>(</td>
          <td class="paramtype">const u32&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="bitops_8c_source.html#l00046">46</a> of file <a class="el" href="bitops_8c_source.html">bitops.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;{</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">  #if defined (_MSC_VER)</span></div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;  <span class="keywordflow">return</span> _byteswap_ulong (n);</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">  #elif defined (__clang__) || defined (__GNUC__)</span></div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;  <span class="keywordflow">return</span> __builtin_bswap32 (n);</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">  #else</span></div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;  <span class="keywordflow">return</span> (n &amp; 0xff000000) &gt;&gt; 24</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;       | (n &amp; 0x00ff0000) &gt;&gt;  8</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;       | (n &amp; 0x0000ff00) &lt;&lt;  8</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;       | (n &amp; 0x000000ff) &lt;&lt; 24;</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">  #endif</span></div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;}</div></div><!-- fragment -->
<p class="reference">Referenced by <a class="el" href="cpu__aes_8c_source.html#l00869">AES128_decrypt()</a>, <a class="el" href="cpu__aes_8c_source.html#l00783">AES128_encrypt()</a>, <a class="el" href="cpu__aes_8c_source.html#l00704">AES128_ExpandKey()</a>, <a class="el" href="cpu__aes_8c_source.html#l01160">AES256_decrypt()</a>, <a class="el" href="cpu__aes_8c_source.html#l01058">AES256_encrypt()</a>, <a class="el" href="cpu__aes_8c_source.html#l00957">AES256_ExpandKey()</a>, <a class="el" href="interface_8c_source.html#l05464">agilekey_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l07369">androidfde_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l12924">ascii_digest()</a>, <a class="el" href="interface_8c_source.html#l02115">bcrypt_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l10168">bitcoin_wallet_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l11953">cf10_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l06570">chap_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l07588">cisco8_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l06620">cloudkey_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l08844">crammd5_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03930">dcc_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l06997">des_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l08721">djangopbkdf2_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l05782">episerver4_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l02979">episerver_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l10861">gost2012sbog_256_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l10888">gost2012sbog_512_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l05628">gost_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l05953">hmacmd5_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l04790">ikepsk_md5_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03977">ipb2_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03707">joomla_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l00349">juniper_decrypt_hash()</a>, <a class="el" href="interface_8c_source.html#l02207">lm_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l07049">lotus5_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03065">md4_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03089">md5_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03113">md5half_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03801">md5md5_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03130">md5s_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l07240">mediawiki_b_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l12103">ms_drsr_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03293">netntlmv1_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03529">netntlmv2_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l06534">netscaler_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l02389">netscreen_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l06730">nsec3_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l08100">oldoffice01_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l08228">oldoffice01cm2_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l08375">oldoffice34_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l08502">oldoffice34cm2_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l04413">oracleh_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l02342">osc_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l02002">parse_and_store_salt()</a>, <a class="el" href="interface_8c_source.html#l11013">pbkdf2_sha1_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l09924">pbkdf2_sha256_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l09017">pdf11_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l09226">pdf11cm2_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l09461">pdf14_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l09753">pdf17l8_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l07194">phps_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l10046">postgresql_auth_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03754">postgresql_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l10011">prestashop_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l02733">psafe2_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l02770">psafe3_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l04129">pstoken_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l06910">racf_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l08645">radmin2_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l06465">rakp_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l11298">rar3hp_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l04964">ripemd160_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l06221">sapb_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l08918">saph_sha1_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l10695">seven_zip_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l05311">sha1aix_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l05360">sha256aix_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l05710">sha512osx_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l10315">sip_auth_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l08800">siphash_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l07321">skype_parse_hash()</a>, <a class="el" href="rp__kernel__on__cpu_8c_source.html#l00019">swap32_S()</a>, <a class="el" href="interface_8c_source.html#l12858">to_hccap_t()</a>, <a class="el" href="interface_8c_source.html#l03888">vb30_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03841">vb3_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l02607">wpa_parse_hash()</a>, and <a class="el" href="interface_8c_source.html#l12232">zip2_parse_hash()</a>.</p>

</div>
</div>
<a id="a6eb53eddc00b9bb05722cccb56ddab64"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6eb53eddc00b9bb05722cccb56ddab64">&#9670;&nbsp;</a></span>byte_swap_64()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u64 byte_swap_64 </td>
          <td>(</td>
          <td class="paramtype">const u64&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="bitops_8c_source.html#l00060">60</a> of file <a class="el" href="bitops_8c_source.html">bitops.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;{</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">  #if defined (_MSC_VER)</span></div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;  <span class="keywordflow">return</span> _byteswap_uint64 (n);</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">  #elif defined (__clang__) || defined (__GNUC__)</span></div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;  <span class="keywordflow">return</span> __builtin_bswap64 (n);</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor">  #else</span></div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;  <span class="keywordflow">return</span> (n &amp; 0xff00000000000000ULL) &gt;&gt; 56</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;       | (n &amp; 0x00ff000000000000ULL) &gt;&gt; 40</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;       | (n &amp; 0x0000ff0000000000ULL) &gt;&gt; 24</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;       | (n &amp; 0x000000ff00000000ULL) &gt;&gt;  8</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;       | (n &amp; 0x00000000ff000000ULL) &lt;&lt;  8</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;       | (n &amp; 0x0000000000ff0000ULL) &lt;&lt; 24</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;       | (n &amp; 0x000000000000ff00ULL) &lt;&lt; 40</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;       | (n &amp; 0x00000000000000ffULL) &lt;&lt; 56;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor">  #endif</span></div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;}</div></div><!-- fragment -->
<p class="reference">Referenced by <a class="el" href="interface_8c_source.html#l12924">ascii_digest()</a>, <a class="el" href="interface_8c_source.html#l06363">drupal7_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l04766">keccak_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l11100">pbkdf2_sha512_parse_hash()</a>, and <a class="el" href="interface_8c_source.html#l05412">sha512aix_parse_hash()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="bitops_8c_a6eb53eddc00b9bb05722cccb56ddab64_icgraph.gif" border="0" usemap="#bitops_8c_a6eb53eddc00b9bb05722cccb56ddab64_icgraph" alt=""/></div>
<map name="bitops_8c_a6eb53eddc00b9bb05722cccb56ddab64_icgraph" id="bitops_8c_a6eb53eddc00b9bb05722cccb56ddab64_icgraph">
<area shape="rect"  title=" " alt="" coords="3487,107,3592,133"/>
<area shape="rect"  href="interface_8c.html#a1786621d215322ac6bc1c9f60efa4c8b" title=" " alt="" coords="3302,208,3393,235"/>
<area shape="rect"  href="interface_8c.html#a65a4c31985c665d5a1284706ae821a5b" title=" " alt="" coords="3278,157,3417,184"/>
<area shape="rect"  href="interface_8c.html#a326cb984a14fd63002889396f4bf6962" title=" " alt="" coords="3278,5,3417,32"/>
<area shape="rect"  href="interface_8c.html#a91cb9aa10aa1a23ef404a31450fc13c7" title=" " alt="" coords="3256,56,3439,83"/>
<area shape="rect"  href="interface_8c.html#ada863621a90db913d93e02da6ebacf93" title=" " alt="" coords="3270,107,3425,133"/>
<area shape="rect"  href="hashes_8c.html#a5c95202be7d166a6346b342145ed9b1c" title=" " alt="" coords="3087,208,3170,235"/>
<area shape="rect"  href="hashes_8c.html#a941bbcf804b81ac407d485859bf87999" title=" " alt="" coords="1736,259,1828,285"/>
<area shape="rect"  href="potfile_8c.html#ab54e1941ce1ee998c5b86e79d6e57bbc" title=" " alt="" coords="456,107,595,133"/>
<area shape="rect"  href="potfile_8c.html#aa340141d20febc4004a75982ea4927b2" title=" " alt="" coords="2871,157,2996,184"/>
<area shape="rect"  href="status_8c.html#a1143c80f218b32f866e0cc80ae036bc3" title=" " alt="" coords="3049,360,3208,387"/>
<area shape="rect"  href="monitor_8c.html#a6070c1efbb12309f3d3504ccd1f6ca3d" title=" " alt="" coords="2901,208,2966,235"/>
<area shape="rect"  href="monitor_8c.html#ab9ac4a7731cf2a12f37be8fcdaa38a43" title=" " alt="" coords="2089,208,2197,235"/>
<area shape="rect"  href="hashcat_8c.html#ac33e9695b713153c0fc7cce11696704b" title=" " alt="" coords="325,208,408,235"/>
<area shape="rect"  href="hashcat_8c.html#ac49fece3f82732fda9eb29766cc01168" title=" " alt="" coords="104,512,277,539"/>
<area shape="rect"  href="main_8c.html#a3c04138a5bfe5d72780bb7e82a18e627" title=" " alt="" coords="5,867,56,893"/>
<area shape="rect"  href="hashes_8c.html#a98055a12599ed1bd53da5c0694605f3d" title=" " alt="" coords="1289,461,1400,488"/>
<area shape="rect"  href="opencl_8c.html#af8bef12676549083a86b2986c456f72d" title=" " alt="" coords="1103,411,1194,437"/>
<area shape="rect"  href="weak__hash_8c.html#a410a6e1cce44e8f0c4cde8ec7d00ecd8" title=" " alt="" coords="1084,461,1213,488"/>
<area shape="rect"  href="dispatch_8c.html#a274118ca9e580459d6e82f6d61a34d59" title=" " alt="" coords="955,411,1036,437"/>
<area shape="rect"  href="dispatch_8c.html#a0502555fe69aef3e7b8c3886ef18c145" title=" " alt="" coords="972,360,1019,387"/>
<area shape="rect"  href="dispatch_8c.html#a9e518ec031f388304424fb2852075038" title=" " alt="" coords="783,411,907,437"/>
<area shape="rect"  href="hashcat_8c.html#a9ec4f74d423ae0bd4aa6e960632b7086" title=" " alt="" coords="645,335,733,361"/>
<area shape="rect"  href="hashcat_8c.html#ad6cc36d03dcdad3413c794efecb3178a" title=" " alt="" coords="481,284,569,311"/>
<area shape="rect"  href="dispatch_8c.html#a45ffdf5a91d67bdc7a27b7fe7d39761a" title=" " alt="" coords="800,360,889,387"/>
<area shape="rect"  href="hashcat_8c.html#a325cba22ef98f99a706d99c65989a2c2" title=" " alt="" coords="2865,411,3001,437"/>
<area shape="rect"  href="main__shared_8c.html#ae96d7808ccfe95bbec7a55e2ada91935" title=" " alt="" coords="2697,512,2747,539"/>
<area shape="rect"  href="terminal_8c.html#ae3a80a3f67aa1810c8d9e49911f490a6" title=" " alt="" coords="2641,563,2803,605"/>
<area shape="rect"  href="terminal_8c.html#a64a36e504f5e3a0b633b17dcfcf8366f" title=" " alt="" coords="2461,563,2567,589"/>
<area shape="rect"  href="terminal_8c.html#ab059eb0bceb2ee24e8f86c04f4354d16" title=" " alt="" coords="2627,411,2817,437"/>
<area shape="rect"  href="terminal_8c.html#a30f3bb901b9e4c86fe78abb104c2f2fa" title=" " alt="" coords="2449,411,2579,437"/>
<area shape="rect"  href="main_8c.html#af6ada2a7aa24abc385db81bf2967d967" title=" " alt="" coords="2251,504,2401,531"/>
<area shape="rect"  href="main_8c.html#a4e664697b793b6744c9849c1de53a051" title=" " alt="" coords="1885,555,2027,597"/>
<area shape="rect"  href="terminal_8c.html#a99e7c4c326b4b2acdbe60cedc81efea1" title=" " alt="" coords="2289,617,2363,644"/>
<area shape="rect"  href="main_8c.html#a73c3170c7171851eb6e8f5a402599423" title=" " alt="" coords="1756,613,1808,640"/>
<area shape="rect"  href="hashcat_8c.html#ade4c61ccaafb16eae04c7d4b727942f3" title=" " alt="" coords="643,867,735,893"/>
<area shape="rect"  href="opencl_8c.html#a3797f3c2680a9e341e314ad0c84c9b16" title=" " alt="" coords="1484,563,1680,589"/>
<area shape="rect"  href="opencl_8c.html#a0c2e61014e4dab417caa193c598b6a23" title=" " alt="" coords="1303,613,1386,640"/>
<area shape="rect"  href="opencl_8c.html#a6b505220d582c3a31d651cbe1d685484" title=" " alt="" coords="1519,461,1645,488"/>
<area shape="rect"  href="opencl_8c.html#ab47974684ac3076a5e2fe97db360f1f1" title=" " alt="" coords="1498,411,1666,437"/>
<area shape="rect"  href="opencl_8c.html#ac62e3f353065d17d4caa46e165be51c2" title=" " alt="" coords="1261,360,1428,387"/>
<area shape="rect"  href="opencl_8c.html#a707b32d6170142181dc47bc668c03efa" title=" " alt="" coords="1499,512,1665,539"/>
<area shape="rect"  href="opencl_8c.html#af7aecf5b949a11bafa5f455504b5a8c2" title=" " alt="" coords="1501,664,1663,691"/>
<area shape="rect"  href="opencl_8c.html#aba298160a7f6951fdd26c1e2846e7f9b" title=" " alt="" coords="1476,816,1688,843"/>
<area shape="rect"  href="opencl_8c.html#a1a05fbe1529ac9bd5fcd1a0fed0f0fe7" title=" " alt="" coords="1496,765,1668,792"/>
<area shape="rect"  href="opencl_8c.html#ad598c213dd69579a45ca34bcac1ba552" title=" " alt="" coords="1516,613,1648,640"/>
<area shape="rect"  href="opencl_8c.html#a923e021b433067dd09b59522c754d4f4" title=" " alt="" coords="1291,537,1398,564"/>
<area shape="rect"  href="terminal_8c.html#a5a70871e3050a17bffd2e15779d536d2" title=" " alt="" coords="2084,619,2203,645"/>
<area shape="rect"  href="main_8c.html#aa9cb60ea1fd75f8faf5ce16454f526ec" title=" " alt="" coords="1876,621,2036,648"/>
<area shape="rect"  href="interface_8c.html#a748d227a9485eb76daa5f1e70ea9badc" title=" " alt="" coords="3075,56,3183,83"/>
</map>
</div>

</div>
</div>
<a id="a6cca97e9410febb66fd3238218978c0f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6cca97e9410febb66fd3238218978c0f">&#9670;&nbsp;</a></span>rotl32()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 rotl32 </td>
          <td>(</td>
          <td class="paramtype">const u32&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u32&#160;</td>
          <td class="paramname"><em>n</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Author......: See docs/credits.txt License.....: MIT </p>

<p class="definition">Definition at line <a class="el" href="bitops_8c_source.html#l00010">10</a> of file <a class="el" href="bitops_8c_source.html">bitops.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;{</div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">  #if defined (_MSC_VER)</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;  <span class="keywordflow">return</span> _rotl (a, n);</div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">  #else</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;  <span class="keywordflow">return</span> ((a &lt;&lt; n) | (a &gt;&gt; (32 - n)));</div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">  #endif</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;}</div></div><!-- fragment -->
<p class="reference">Referenced by <a class="el" href="cpu__des_8c_source.html#l00387">_des_encrypt()</a>, <a class="el" href="cpu__des_8c_source.html#l00329">_des_keysetup()</a>, <a class="el" href="interface_8c_source.html#l12924">ascii_digest()</a>, <a class="el" href="interface_8c_source.html#l03293">netntlmv1_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l06910">racf_parse_hash()</a>, and <a class="el" href="cpu__sha1_8c_source.html#l00015">sha1_64()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="bitops_8c_a6cca97e9410febb66fd3238218978c0f_icgraph.gif" border="0" usemap="#bitops_8c_a6cca97e9410febb66fd3238218978c0f_icgraph" alt=""/></div>
<map name="bitops_8c_a6cca97e9410febb66fd3238218978c0f_icgraph" id="bitops_8c_a6cca97e9410febb66fd3238218978c0f_icgraph">
<area shape="rect"  title=" " alt="" coords="3056,115,3111,141"/>
<area shape="rect"  href="cpu__des_8c.html#a38d43923d91db31ef4377e82d4de748b" title=" " alt="" coords="2903,89,3003,116"/>
<area shape="rect"  href="interface_8c.html#a33a313b0f1a4759adae6773641050056" title=" " alt="" coords="2695,76,2845,103"/>
<area shape="rect"  href="cpu__des_8c.html#a641a7dbedee41c45783ec3fd3e3983a3" title=" " alt="" coords="2897,39,3008,65"/>
<area shape="rect"  href="interface_8c.html#a1786621d215322ac6bc1c9f60efa4c8b" title=" " alt="" coords="2907,267,2998,293"/>
<area shape="rect"  href="interface_8c.html#ae14b757009262d3aac6398586dc65079" title=" " alt="" coords="2711,13,2829,40"/>
<area shape="rect"  href="cpu__sha1_8c.html#a8515b02eb847929727ab38711bd2fe9a" title=" " alt="" coords="2917,191,2988,217"/>
<area shape="rect"  href="interface_8c.html#a748d227a9485eb76daa5f1e70ea9badc" title=" " alt="" coords="2521,89,2629,116"/>
<area shape="rect"  href="hashcat_8c.html#ac33e9695b713153c0fc7cce11696704b" title=" " alt="" coords="325,279,408,305"/>
<area shape="rect"  href="hashcat_8c.html#ac49fece3f82732fda9eb29766cc01168" title=" " alt="" coords="104,583,277,609"/>
<area shape="rect"  href="main_8c.html#a3c04138a5bfe5d72780bb7e82a18e627" title=" " alt="" coords="5,937,56,964"/>
<area shape="rect"  href="hashes_8c.html#a5c95202be7d166a6346b342145ed9b1c" title=" " alt="" coords="2729,279,2811,305"/>
<area shape="rect"  href="hashes_8c.html#a941bbcf804b81ac407d485859bf87999" title=" " alt="" coords="2109,344,2201,371"/>
<area shape="rect"  href="potfile_8c.html#ab54e1941ce1ee998c5b86e79d6e57bbc" title=" " alt="" coords="1705,228,1844,255"/>
<area shape="rect"  href="potfile_8c.html#aa340141d20febc4004a75982ea4927b2" title=" " alt="" coords="1251,177,1377,204"/>
<area shape="rect"  href="status_8c.html#a1143c80f218b32f866e0cc80ae036bc3" title=" " alt="" coords="2691,451,2849,477"/>
<area shape="rect"  href="monitor_8c.html#a6070c1efbb12309f3d3504ccd1f6ca3d" title=" " alt="" coords="2542,279,2607,305"/>
<area shape="rect"  href="monitor_8c.html#ab9ac4a7731cf2a12f37be8fcdaa38a43" title=" " alt="" coords="456,279,564,305"/>
<area shape="rect"  href="hashes_8c.html#a98055a12599ed1bd53da5c0694605f3d" title=" " alt="" coords="1259,520,1369,547"/>
<area shape="rect"  href="opencl_8c.html#af8bef12676549083a86b2986c456f72d" title=" " alt="" coords="1073,431,1163,457"/>
<area shape="rect"  href="weak__hash_8c.html#a410a6e1cce44e8f0c4cde8ec7d00ecd8" title=" " alt="" coords="1053,520,1183,547"/>
<area shape="rect"  href="dispatch_8c.html#a274118ca9e580459d6e82f6d61a34d59" title=" " alt="" coords="924,380,1005,407"/>
<area shape="rect"  href="dispatch_8c.html#a0502555fe69aef3e7b8c3886ef18c145" title=" " alt="" coords="941,431,988,457"/>
<area shape="rect"  href="dispatch_8c.html#a9e518ec031f388304424fb2852075038" title=" " alt="" coords="752,380,876,407"/>
<area shape="rect"  href="hashcat_8c.html#a9ec4f74d423ae0bd4aa6e960632b7086" title=" " alt="" coords="614,368,702,395"/>
<area shape="rect"  href="hashcat_8c.html#ad6cc36d03dcdad3413c794efecb3178a" title=" " alt="" coords="466,343,554,369"/>
<area shape="rect"  href="dispatch_8c.html#a45ffdf5a91d67bdc7a27b7fe7d39761a" title=" " alt="" coords="769,431,859,457"/>
<area shape="rect"  href="hashcat_8c.html#a325cba22ef98f99a706d99c65989a2c2" title=" " alt="" coords="2507,500,2643,527"/>
<area shape="rect"  href="main__shared_8c.html#ae96d7808ccfe95bbec7a55e2ada91935" title=" " alt="" coords="2338,500,2389,527"/>
<area shape="rect"  href="terminal_8c.html#ae3a80a3f67aa1810c8d9e49911f490a6" title=" " alt="" coords="2282,551,2445,593"/>
<area shape="rect"  href="terminal_8c.html#a64a36e504f5e3a0b633b17dcfcf8366f" title=" " alt="" coords="2102,559,2209,585"/>
<area shape="rect"  href="terminal_8c.html#ab059eb0bceb2ee24e8f86c04f4354d16" title=" " alt="" coords="2268,668,2459,695"/>
<area shape="rect"  href="terminal_8c.html#a30f3bb901b9e4c86fe78abb104c2f2fa" title=" " alt="" coords="2091,668,2220,695"/>
<area shape="rect"  href="main_8c.html#af6ada2a7aa24abc385db81bf2967d967" title=" " alt="" coords="1892,672,2043,699"/>
<area shape="rect"  href="main_8c.html#a4e664697b793b6744c9849c1de53a051" title=" " alt="" coords="1896,606,2039,647"/>
<area shape="rect"  href="terminal_8c.html#a99e7c4c326b4b2acdbe60cedc81efea1" title=" " alt="" coords="1930,555,2005,581"/>
<area shape="rect"  href="main_8c.html#a73c3170c7171851eb6e8f5a402599423" title=" " alt="" coords="1749,680,1801,707"/>
<area shape="rect"  href="hashcat_8c.html#ade4c61ccaafb16eae04c7d4b727942f3" title=" " alt="" coords="612,988,704,1015"/>
<area shape="rect"  href="opencl_8c.html#a3797f3c2680a9e341e314ad0c84c9b16" title=" " alt="" coords="1453,785,1649,812"/>
<area shape="rect"  href="opencl_8c.html#a0c2e61014e4dab417caa193c598b6a23" title=" " alt="" coords="1273,785,1355,812"/>
<area shape="rect"  href="opencl_8c.html#a6b505220d582c3a31d651cbe1d685484" title=" " alt="" coords="1488,684,1615,711"/>
<area shape="rect"  href="opencl_8c.html#ab47974684ac3076a5e2fe97db360f1f1" title=" " alt="" coords="1467,481,1635,508"/>
<area shape="rect"  href="opencl_8c.html#ac62e3f353065d17d4caa46e165be51c2" title=" " alt="" coords="1231,419,1397,445"/>
<area shape="rect"  href="opencl_8c.html#a707b32d6170142181dc47bc668c03efa" title=" " alt="" coords="1468,633,1635,660"/>
<area shape="rect"  href="opencl_8c.html#af7aecf5b949a11bafa5f455504b5a8c2" title=" " alt="" coords="1470,532,1633,559"/>
<area shape="rect"  href="opencl_8c.html#aba298160a7f6951fdd26c1e2846e7f9b" title=" " alt="" coords="1445,583,1657,609"/>
<area shape="rect"  href="opencl_8c.html#a1a05fbe1529ac9bd5fcd1a0fed0f0fe7" title=" " alt="" coords="1465,887,1637,913"/>
<area shape="rect"  href="opencl_8c.html#ad598c213dd69579a45ca34bcac1ba552" title=" " alt="" coords="1485,735,1617,761"/>
<area shape="rect"  href="terminal_8c.html#a5a70871e3050a17bffd2e15779d536d2" title=" " alt="" coords="1715,555,1834,581"/>
<area shape="rect"  href="interface_8c.html#a1f5e77c01a4f4b050f6fa2fb88c5f646" title=" " alt="" coords="2699,127,2841,153"/>
</map>
</div>

</div>
</div>
<a id="a115bdd5d5aa2876f94223378088e3ee3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a115bdd5d5aa2876f94223378088e3ee3">&#9670;&nbsp;</a></span>rotl64()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u64 rotl64 </td>
          <td>(</td>
          <td class="paramtype">const u64&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u64&#160;</td>
          <td class="paramname"><em>n</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="bitops_8c_source.html#l00028">28</a> of file <a class="el" href="bitops_8c_source.html">bitops.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;{</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">  #if defined (_MSC_VER)</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;  <span class="keywordflow">return</span> _rotl64 (a, n);</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">  #else</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;  <span class="keywordflow">return</span> ((a &lt;&lt; n) | (a &gt;&gt; (64 - n)));</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">  #endif</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
<a id="a53ed22702e46960517b997e16d6280a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a53ed22702e46960517b997e16d6280a4">&#9670;&nbsp;</a></span>rotr32()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 rotr32 </td>
          <td>(</td>
          <td class="paramtype">const u32&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u32&#160;</td>
          <td class="paramname"><em>n</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="bitops_8c_source.html#l00019">19</a> of file <a class="el" href="bitops_8c_source.html">bitops.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;{</div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">  #if defined (_MSC_VER)</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;  <span class="keywordflow">return</span> _rotr (a, n);</div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">  #else</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;  <span class="keywordflow">return</span> ((a &gt;&gt; n) | (a &lt;&lt; (32 - n)));</div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">  #endif</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;}</div></div><!-- fragment -->
<p class="reference">Referenced by <a class="el" href="interface_8c_source.html#l12924">ascii_digest()</a>, <a class="el" href="interface_8c_source.html#l11250">bsdicrypt_parse_hash()</a>, <a class="el" href="interface_8c_source.html#l03293">netntlmv1_parse_hash()</a>, and <a class="el" href="interface_8c_source.html#l06910">racf_parse_hash()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="bitops_8c_a53ed22702e46960517b997e16d6280a4_icgraph.gif" border="0" usemap="#bitops_8c_a53ed22702e46960517b997e16d6280a4_icgraph" alt=""/></div>
<map name="bitops_8c_a53ed22702e46960517b997e16d6280a4_icgraph" id="bitops_8c_a53ed22702e46960517b997e16d6280a4_icgraph">
<area shape="rect"  title=" " alt="" coords="3455,259,3509,285"/>
<area shape="rect"  href="interface_8c.html#a1786621d215322ac6bc1c9f60efa4c8b" title=" " alt="" coords="3286,132,3377,159"/>
<area shape="rect"  href="interface_8c.html#a351a98cc91234e60f919010cc575139e" title=" " alt="" coords="3257,233,3406,260"/>
<area shape="rect"  href="interface_8c.html#a33a313b0f1a4759adae6773641050056" title=" " alt="" coords="3256,284,3407,311"/>
<area shape="rect"  href="interface_8c.html#ae14b757009262d3aac6398586dc65079" title=" " alt="" coords="3273,335,3390,361"/>
<area shape="rect"  href="hashes_8c.html#a5c95202be7d166a6346b342145ed9b1c" title=" " alt="" coords="3087,107,3170,133"/>
<area shape="rect"  href="hashes_8c.html#a941bbcf804b81ac407d485859bf87999" title=" " alt="" coords="1736,233,1828,260"/>
<area shape="rect"  href="potfile_8c.html#ab54e1941ce1ee998c5b86e79d6e57bbc" title=" " alt="" coords="456,5,595,32"/>
<area shape="rect"  href="potfile_8c.html#aa340141d20febc4004a75982ea4927b2" title=" " alt="" coords="2871,56,2996,83"/>
<area shape="rect"  href="status_8c.html#a1143c80f218b32f866e0cc80ae036bc3" title=" " alt="" coords="3049,228,3208,255"/>
<area shape="rect"  href="monitor_8c.html#a6070c1efbb12309f3d3504ccd1f6ca3d" title=" " alt="" coords="2901,107,2966,133"/>
<area shape="rect"  href="monitor_8c.html#ab9ac4a7731cf2a12f37be8fcdaa38a43" title=" " alt="" coords="2089,107,2197,133"/>
<area shape="rect"  href="hashcat_8c.html#ac33e9695b713153c0fc7cce11696704b" title=" " alt="" coords="325,208,408,235"/>
<area shape="rect"  href="hashcat_8c.html#ac49fece3f82732fda9eb29766cc01168" title=" " alt="" coords="104,461,277,488"/>
<area shape="rect"  href="main_8c.html#a3c04138a5bfe5d72780bb7e82a18e627" title=" " alt="" coords="5,765,56,792"/>
<area shape="rect"  href="hashes_8c.html#a98055a12599ed1bd53da5c0694605f3d" title=" " alt="" coords="1289,309,1400,336"/>
<area shape="rect"  href="opencl_8c.html#af8bef12676549083a86b2986c456f72d" title=" " alt="" coords="1103,259,1194,285"/>
<area shape="rect"  href="weak__hash_8c.html#a410a6e1cce44e8f0c4cde8ec7d00ecd8" title=" " alt="" coords="1084,309,1213,336"/>
<area shape="rect"  href="dispatch_8c.html#a274118ca9e580459d6e82f6d61a34d59" title=" " alt="" coords="955,259,1036,285"/>
<area shape="rect"  href="dispatch_8c.html#a0502555fe69aef3e7b8c3886ef18c145" title=" " alt="" coords="972,208,1019,235"/>
<area shape="rect"  href="dispatch_8c.html#a9e518ec031f388304424fb2852075038" title=" " alt="" coords="783,259,907,285"/>
<area shape="rect"  href="hashcat_8c.html#a9ec4f74d423ae0bd4aa6e960632b7086" title=" " alt="" coords="645,208,733,235"/>
<area shape="rect"  href="hashcat_8c.html#ad6cc36d03dcdad3413c794efecb3178a" title=" " alt="" coords="481,208,569,235"/>
<area shape="rect"  href="dispatch_8c.html#a45ffdf5a91d67bdc7a27b7fe7d39761a" title=" " alt="" coords="800,208,889,235"/>
<area shape="rect"  href="hashcat_8c.html#a325cba22ef98f99a706d99c65989a2c2" title=" " alt="" coords="2865,309,3001,336"/>
<area shape="rect"  href="main__shared_8c.html#ae96d7808ccfe95bbec7a55e2ada91935" title=" " alt="" coords="2697,411,2747,437"/>
<area shape="rect"  href="terminal_8c.html#ae3a80a3f67aa1810c8d9e49911f490a6" title=" " alt="" coords="2641,462,2803,503"/>
<area shape="rect"  href="terminal_8c.html#a64a36e504f5e3a0b633b17dcfcf8366f" title=" " alt="" coords="2461,461,2567,488"/>
<area shape="rect"  href="terminal_8c.html#ab059eb0bceb2ee24e8f86c04f4354d16" title=" " alt="" coords="2627,309,2817,336"/>
<area shape="rect"  href="terminal_8c.html#a30f3bb901b9e4c86fe78abb104c2f2fa" title=" " alt="" coords="2449,309,2579,336"/>
<area shape="rect"  href="main_8c.html#af6ada2a7aa24abc385db81bf2967d967" title=" " alt="" coords="2251,403,2401,429"/>
<area shape="rect"  href="main_8c.html#a4e664697b793b6744c9849c1de53a051" title=" " alt="" coords="1885,454,2027,495"/>
<area shape="rect"  href="terminal_8c.html#a99e7c4c326b4b2acdbe60cedc81efea1" title=" " alt="" coords="2289,515,2363,541"/>
<area shape="rect"  href="main_8c.html#a73c3170c7171851eb6e8f5a402599423" title=" " alt="" coords="1756,512,1808,539"/>
<area shape="rect"  href="hashcat_8c.html#ade4c61ccaafb16eae04c7d4b727942f3" title=" " alt="" coords="643,765,735,792"/>
<area shape="rect"  href="opencl_8c.html#a3797f3c2680a9e341e314ad0c84c9b16" title=" " alt="" coords="1484,461,1680,488"/>
<area shape="rect"  href="opencl_8c.html#a0c2e61014e4dab417caa193c598b6a23" title=" " alt="" coords="1303,512,1386,539"/>
<area shape="rect"  href="opencl_8c.html#a6b505220d582c3a31d651cbe1d685484" title=" " alt="" coords="1519,411,1645,437"/>
<area shape="rect"  href="opencl_8c.html#ab47974684ac3076a5e2fe97db360f1f1" title=" " alt="" coords="1498,309,1666,336"/>
<area shape="rect"  href="opencl_8c.html#ac62e3f353065d17d4caa46e165be51c2" title=" " alt="" coords="1261,208,1428,235"/>
<area shape="rect"  href="opencl_8c.html#a707b32d6170142181dc47bc668c03efa" title=" " alt="" coords="1499,360,1665,387"/>
<area shape="rect"  href="opencl_8c.html#af7aecf5b949a11bafa5f455504b5a8c2" title=" " alt="" coords="1501,563,1663,589"/>
<area shape="rect"  href="opencl_8c.html#aba298160a7f6951fdd26c1e2846e7f9b" title=" " alt="" coords="1476,715,1688,741"/>
<area shape="rect"  href="opencl_8c.html#a1a05fbe1529ac9bd5fcd1a0fed0f0fe7" title=" " alt="" coords="1496,613,1668,640"/>
<area shape="rect"  href="opencl_8c.html#ad598c213dd69579a45ca34bcac1ba552" title=" " alt="" coords="1516,664,1648,691"/>
<area shape="rect"  href="opencl_8c.html#a923e021b433067dd09b59522c754d4f4" title=" " alt="" coords="1291,385,1398,412"/>
<area shape="rect"  href="opencl_8c.html#aa3be407e53521e7f7f0d4de086ee7018" title=" " alt="" coords="1293,461,1397,488"/>
<area shape="rect"  href="terminal_8c.html#a5a70871e3050a17bffd2e15779d536d2" title=" " alt="" coords="2084,519,2203,545"/>
<area shape="rect"  href="main_8c.html#aa9cb60ea1fd75f8faf5ce16454f526ec" title=" " alt="" coords="1876,520,2036,547"/>
<area shape="rect"  href="interface_8c.html#a748d227a9485eb76daa5f1e70ea9badc" title=" " alt="" coords="3075,316,3183,343"/>
</map>
</div>

</div>
</div>
<a id="a9882286891d63783d6f50e5148853907"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9882286891d63783d6f50e5148853907">&#9670;&nbsp;</a></span>rotr64()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u64 rotr64 </td>
          <td>(</td>
          <td class="paramtype">const u64&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u64&#160;</td>
          <td class="paramname"><em>n</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="bitops_8c_source.html#l00037">37</a> of file <a class="el" href="bitops_8c_source.html">bitops.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;{</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">  #if defined (_MSC_VER)</span></div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;  <span class="keywordflow">return</span> _rotr64 (a, n);</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">  #else</span></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;  <span class="keywordflow">return</span> ((a &gt;&gt; n) | (a &lt;&lt; (64 - n)));</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">  #endif</span></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;}</div></div><!-- fragment -->
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>
